﻿using mozhi.smarterp.Finance.Banks;
using mozhi.smarterp.Finance.Querys;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using Volo.Abp.Domain.Repositories;

namespace mozhi.smarterp.Finance.Finances.Repository
{
    public interface IJournalRepository : IRepository<Journal, Guid>
    {
        Task<int> GetCountAsync(JournalPageQuery query);

        Task<List<Journal>> FindAsync(JournalPageQuery query);

        Task<List<int>> FindNumbersAsync(Guid numberPrefixId, int period);

        Task<List<KeyValuePair<Guid, List<string>>>> FindNumberKeyvaluesAsync(int period);

        Task<List<Journal>> UpdateAsync(List<Journal> journals);
        
    }
}
